package com.cxs.service;

import com.cxs.pojo.Role;
import com.cxs.vo.MenuTreeVO;
import com.github.pagehelper.PageInfo;

import java.util.List;

/*
 * @Author:cxs
 * @Date:2021/10/18  16:31
 * @Version 1.0
 * @Motto:放下杂念,只为迎接明天更好的自己
 * */
public interface RoleService {
    /**
     * 查询所有角色信息
     * @return
     */
    List<Role> selectAll();

    /**
     * 分页 + 条件
     * @param role
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageInfo<Role> selectAllCondition(Role role, Integer pageNum, Integer pageSize);

    /**
     * 修改角色信息
     * @param role
     */
    void update(Role role);

    /**
     * 添加角色
     * @param role
     */
    void insert(Role role);

    /**
     * 删除角色
     * @param roleId
     */
    void delete(Integer roleId);

    /**
     * 根据角色id查菜单
     * @param roleId
     * @return
     */
    List<MenuTreeVO> loadRoleMenu(Integer roleId);

    /**
     * 给角色授权
     * @param roleId
     * @param ids
     */
    void saveRoleMenu(Integer roleId, Integer[] ids);
}
